package lt.bcra.handler;


import java.util.Arrays;
import java.util.List;

public  final class CodeConstants {
    public static final class FAMILY_MEMBER {
        public static final String ME = "ME";//本人

        public static final String MATERNAL_AUNT = "MATERNAL_AUNT";

        public static final String PATERNAL_AUNT = "PATERNAL_AUNT";

        public static final String MOTHER = "MOTHER";

        public static final List<String> FIRST = Arrays.asList("FATHER", "MOTHER", "SON", "DAUGHTER", "BROTHER", "SISTER");

        public static final List<String> SECOND = Arrays.asList("PATERNAL_GRANDFATHER", "PATERNAL_GRANDMOTHER",
                "PATERNAL_UNCLE", "PATERNAL_AUNT", "PATERNAL_NEPHEW", "PATERNAL_NIECE", "PATERNAL_GRANDSON",
                "PATERNAL_GRANDDAUGHTER", "PATERNAL_HALF_BROTHER", "PATERNAL_HALF_SISTER", "MATERNAL_GRANDFATHER",
                "MATERNAL_GRANDMOTHER", "MATERNAL_UNCLE", "MATERNAL_AUNT", "MATERNAL_NEPHEW", "MATERNAL_NIECE",
                "MATERNAL_GRANDSON", "MATERNAL_GRANDDAUGHTER", "MATERNAL_HALF_BROTHER", "MATERNAL_HALF_SISTER");
    }

    public static final class DISEASE_TYPE {
        public static final String BREAST_CANCER = "乳腺癌";//乳腺癌
        public static final String OVARIAN_CANCER = "卵巢癌";//卵巢癌
    }

    public static final class CLAUSE_MEMBER_COUNT {
        public static final String BREAST_FIRST_ONE = "BREAST_FIRST_ONE";//
        public static final String BREAST_SECOND_ONE = "BREAST_SECOND_ONE";//
        public static final String BREAST_FIRST_TWO = "BREAST_FIRST_TWO";//
        public static final String BREAST_MONTHER_AUNT1 = "BREAST_MONTHER_AUNT1";//
        public static final String BREAST_MONTHER_AUNT2 = "BREAST_MONTHER_AUNT2";//
        public static final String BREAST_AUNT_DIFF = "BREAST_AUNT_DIFF";//
        public static final String BREAST_AUNT_SAME = "BREAST_AUNT_SAME";//
        public static final String OVARIAN_FIRST_ONE = "OVARIAN_FIRST_ONE";//
        public static final String OVARIAN_FIRST_TWO = "OVARIAN_FIRST_TWO";//
        public static final String OVARIAN_BREAST = "OVARIAN_BREAST";//

    }

    @SuppressWarnings("WeakerAccess")
    public static final class GENE {

        public static final String BRCA = "BRCA";
        public static final String BRCA1 = "BRCA1";
        public static final String BRCA2 = "BRCA2";
        public static final String TP53 = "TP53";
        public static final String PTEN = "PTEN";
        public static final String STK11 = "STK11";
        public static final String ATM = "ATM";
        public static final String CDH1 = "CDH1";
        public static final String CHEK2 = "CHEK2";
        public static final String NBN = "NBN";
        public static final String NF1 = "NF1";
        public static final String PALB2 = "PALB2";
        public static final String BRIP1 = "BRIP1";
        public static final String MSH2 = "MSH2";
        public static final String MLH1 = "MLH1";
        public static final String MSH6 = "MSH6";
        public static final String PMS2 = "PMS2";
        public static final String EPCAM = "EPCAM";
        public static final String RAD51C = "RAD51C";
        public static final String RAD51D = "RAD51D";

        /* Special genes when giving solution */
        public static final List<String> SOLUTION_RELEVANT_DELETERIOUS_VARIATION_GENE =
                Arrays.asList(BRCA, TP53, PTEN, STK11, ATM, CDH1, CHEK2, NBN, NF1, PALB2, BRIP1);

        /* Special genes for solution LYNCH */
        public static final List<String> SOLUTION_LYNCH_RELEVANT_DELETERIOUS_VARIATION_GENE =
                Arrays.asList(MSH2, MLH1, MSH6, PMS2, EPCAM);

        /* Special genes for solution RAD51 */
        public static final List<String> SOLUTION_RAD51_RELEVANT_DELETERIOUS_VARIATION_GENE =
                Arrays.asList(RAD51C, RAD51D);

        /* BRCA relevant genes */
        public static final List<String> BRCA_GENE = Arrays.asList(BRCA1, BRCA2);
    }

    /**
     * All variation types in gene detection are defined here
     */
    public static final class VARIATION_TYPE {

        public static final String HARMFUL_VARIATION = "有害变异";
        public static final String BENIGN_OR_UNKNOWN_VARIATION = "良性或意义不明的变异";
        public static final String NOT_DETECTED = "未检出";
    }

    public static final class FILE_PATH {
        //        public static final String basePath = "/opt/esite/esite-backend-master/esite-images"; //Test
        public static final String basePath = "/opt/esite/esite-backend-questionnaire-master/esite-images"; //Production
    }

    public static final class SMS_CONTENT {
        public static final String REGISTER_PRE = "您的验证码是：";
        public static final String REGISTER_SUF = "。请不要把验证码泄露给其他人。";

        public static final String ACTIVATE = "尊敬的用户，现在您可以登陆乳腺癌风险评估系统填写新的问卷了。";
        public static final String FINISHED = "尊敬的用户，您的乳腺癌风险评估问卷已审核完成，您可登陆系统查看问卷或联系遗传咨询师。";
    }

    public static final class SMS_TYPE {
        public static final String REGISTER = "REGISTER";
        public static final String ACTIVATE = "ACTIVATE";
        public static final String FINISHED = "FINISHED";
    }
}
